package monitor;

import java.util.HashMap;
import java.util.Map;


public class Ambiente {

	private String hostFalho;
	private int quantidadeProcessosCorretos;
	private Map<String, Voto> votos = new HashMap<String, Voto>();
	
	public Ambiente(int quantidadeProcessosCorretos, Voto voto, String ipHostFalho){
		this.quantidadeProcessosCorretos = quantidadeProcessosCorretos;
		votos.put(voto.getEleitor(), voto);
		this.hostFalho = ipHostFalho;
	}
	
	
	
	public String getHostFalho() {
		return hostFalho;
	}

	public void setHostFalho(String hostFalho) {
		this.hostFalho = hostFalho;
	}

	public int getQuantidadeProcessosCorretos() {
		return quantidadeProcessosCorretos;
	}
	public void setQuantidadeProcessosCorretos(int quantidadeProcessosCorretos) {
		this.quantidadeProcessosCorretos = quantidadeProcessosCorretos;
	}
	
	public String setVoto(Voto voto){
		votos.put(voto.getEleitor(), voto);
		return decidir();
	}
	
	public String decidir(){
		String eleitor = null;
		if(votos.size() == quantidadeProcessosCorretos){
			double maior = 0;
			for (Voto voto : votos.values()) {
				if (voto.getVoto() > maior){
					maior = voto.getVoto();
					eleitor = voto.getEleitor();
				} 
			}
		}
		return eleitor;
	}
}
